import { reqSavePermission, reqRoleMenu, reqRolePermission, reqSaveRoleMenu, reqMenuCategory,
 } from "@/api"
// state：仓库存储数据的地方
const state = {
    // 权限列表
    menuList: [],
    // 权限分类
    menuCategory: []

}
// mutations：修改state的唯一手段，因此第一个参数必须是state，第二个参数为将要修改的数据
const mutations = {
    setMenuList(state, res) {
        state.menuList = res
    },
    setMenuCategory(state, res){
        state.menuCategory = res
    }
}
// action：书写业务逻辑（method方法）
const actions = {
    // 获取权限分页
    async savePermission({ commit }, data) {
        let res = await reqSavePermission(data)
        if (res.success) commit("setRoleList", res.data.roleList)
        return res
    },
    // 获取角色权限
    async getRoleMenu({ commit }, data) {
        return await reqRoleMenu(data)
    },
    // 获取所有权限
    async getMenuList({ commit }) {
        let res = await reqRolePermission()
        if (res.success) commit("setMenuList", res.data)
        return res
    },
    // 保存角色权限
    async saveRoleMenu({ commit }, data){
        return await reqSaveRoleMenu(data)
    },
    // 获取权限分类
    async getMenuCategory({commit}){
        let res = await reqMenuCategory()
        if (res.success) commit("setMenuCategory", res.data)
        return res
    }




}
// getters：计算属性
const getters = {

}

export default {
    state,
    mutations,
    actions,
    getters
}